package com.ict.ms.area.service.dao;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.ict.ms.area.facade.dto.PolygonDto;


@Repository
public interface IAreaAddDao {

    /**
     * 矩形
     * @param line 最小边界矩形的对焦线
     * @param name 区域名
     * @param user 用户名
     * @param status 0：异常监控敏感区域；1：分发区域；2：其他区域（待定义）
     */
    void addRectangle(@Param("p") PolygonDto polygonDto);
    void addRectangleCustom(@Param("p") PolygonDto polygonDto);

    /**
     * 多边形
     * @param area 多边形区域，用端点+1闭环组成。
     * @param name 区域名
     * @param user 用户名
     * @param status 0：异常监控敏感区域；1：分发区域；2：其他区域（待定义）
     * @return 区域id
     */
    int addPolygon(@Param("p") PolygonDto polygonDto);
    int addPolygonCustom(@Param("p") PolygonDto polygonDto);

    /**
     * 圆形区域
     * @param lon 圆心
     * @param lat 圆心
     * @param radius 半径
     * @param name 区域名
     * @param user 用户名
     * @param status 0：异常监控敏感区域；1：分发区域；2：其他区域（待定义）
     * @return 区域id
     */
    int addCircle(@Param("p") PolygonDto polygonDto);
    int addCircleCustom(@Param("p") PolygonDto polygonDto);

    /**
     * 扇形区域
     * @param polygonDto
     * @return
     */
    int addSector(@Param("p") PolygonDto polygonDto);
    int addSectorCustom(@Param("p") PolygonDto polygonDto);

    /**
     *
     * @return 区域id
     */
    int getid();


}
